package cn.wolfcode.shop.redis;


import lombok.Getter;
import lombok.Setter;
import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**用来读取redis配置文件中的配置信息的类
 * @ConfigrationProperties可以读取配置文件中指定前缀名的属性注入到类属性中
 * @ConditionalOnProperties() 当此注解内的属性在environment中存在的时候,贴了这个注解的对象才会被创建
 * 其中name用来从application.properties中读取某个属性值，如果该值为空，则返回false;
 * 如果值不为空，则将该值与havingValue指定的值进行比较，如果一样则返回true;否则返回false。
 * 如果返回值为false，则该configuration不生效；为true则生效
 */
@Component
@ConfigurationProperties(prefix = "redis")
@Getter@Setter
@ConditionalOnProperty(prefix = "redis",name="host")
public class RedisConfig {
    private String host;
    private String password;
    private int port;
    private int timeout;
    private int poolMaxTotal;
    private int poolMaxIdle;
    private int poolMaxWait;
}
